-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Data Structure Refactor #43
Conversation
replace disjunction constraint with disjunctive constraint remove src-old
(since JuMP uses VariableIndex)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great. My main recommendations pertain to not modifying the object dictionary, being more careful about constraint types, adding fallbacks, and adapting the code to leverage JuMP's new nonlinear interface.
…unctiveProgramming.jl into structure_overall
…unctiveProgramming.jl into structure_overall
This allows customizations when nesting
Before we merge this, I think it would make sense to unify some of our logical operators with JuMP. Specifically, I think we should support:
We might also consider supporting this addition to JuMP: jump-dev/JuMP.jl#3530. This would allow users to avoid wrapping the expression in parentheses and explicitly give the set. Let me know what you think. |
I think this is ready to be merged, but it might be worth waiting to see what develops with jump-dev/JuMP.jl#3530 so can we can adjust the logical constraint structure accordingly. Alternatively, we can merge this and then address any adjustments in a future PR before releasing a new version of DisjunctiveProgramming. |
Let's merge and add support for |
Copied over to #68 |
This pull request will take some time and seeks to completely refactor DisjunctiveProgramming.jl to better extend JuMP in a more modular and performant way.
TODO
Add printing(save for a future PR)Add documentation via Documenter.jl(save for a future PR)